#include<iostream>
#include<string>
#include<stdio.h>
#include<stdlib.h>
using namespace std;

int g_val_1;
int g_val_2 = 20;

int main()
{

    char st[20] = "hello linux";
    char *str = st ;
    printf("%s",str);
   // const char *str = "hello linux";
   // char *p1 = (char*)malloc(100);
   // char *p2 = (char*)malloc(100);
   // int a = 1;
   // int b = 2;
   // //代码区
   // printf("code addr : %p\n",main);
   // //字符常量区
   // printf("read only string addr : %p\n",str);
   // //已初始化全局数据区
   // printf("init global value addr : %p\n",&g_val_1);
   // //未初始化全局数据区
   // printf("uninit global value addr : %p\n",&g_val_2);
   // //堆区
   // printf("heap addr : %p\n",p1);
   // printf("heap addr : %p\n",p2);
   // //栈区
   // printf("stsck addr : %p\n",&a);
   // printf("stsck addr : %p\n",&b);
   // 


    return 0;
}

